2.
• : n , O(log n)
:
• 1,000 :
o → 1,000
o → 10 (₂(1000) ≈ 10 )
',
(, , , ):
1. > :
-1 //
2. ← ( + ) / 2
3. arr[mid] = key:
4.
<arr[mid]:
BinarySearchRecursive (arr, low, mid - 1, key)
5. :
BinarySearchRecursive (arr, mid + 1, high, key)
(C )
# <stdio.h>
( [], , , ) {
( > ) -1 ;
= ( + ) / 2;
(arr[mid] == key) ;
(key <arr[mid]) binarySearch(arr, low, mid - 1, key) ;
binarySearch(arr, mid + 1, high, key) ;
}
() {
[] = {5, 12, 18, 23, 45, 67, 89};
n = ()/ ([0]);